package com.cloud.api.domain.model;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
@Getter
@Setter
@Accessors(chain = true)
@Schema(name = "ModelController", description = "三电控制器信息")
public class ModelController implements Serializable {

    @Schema(description = "主键")
    @NotEmpty(message = "{validation.common.id}")
    private String id;

    @Schema(description = "驱动电机型号")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String driveMotorModel;

    @Schema(description = "驱动电机厂商")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String driveMotorManufacturer;

    @Schema(description = "车载能源管理系统厂商")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String vehicleEnergySystemManufacturer;

    @Schema(description = "车载能源管理系统型号")
    @Size(max = 50,message = "{validation.common.maxSize}")
    private String vehicleEnergySystemModel;

    @Schema(description = "驱动电机控制器制造商")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String driveMotorControllerManufacturer;

    @Schema(description = "驱动电机控制器型号")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String driveMotorControllerModel;

    @Schema(description = "整车控制器厂商")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String vehicleControllerManufacturer;

    @Schema(description = "整车控制器型号")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String vehicleControllerModel;

    @Schema(description = "电池型号")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String batteryModel;

}
